home *** CD-ROM | disk | FTP | other *** search
- /***[f*****************************************************************
- * PDataInt.h -- Private Data Interface.
- *
- * Copyright 1996 (c) Adobe Systems, Inc. All Rights Reserved
- *
- * Public version
- *
- * $Revision: 1.4 $
- *
- *
- *
- ***f]*****************************************************************/
-
- #ifndef __PDATAINT_H
- #define __PDATAINT_H
-
- #include "pmtypes.h"
- #include "CIObjectAccess.h"
-
- // Some common data types
- //
- #define WINMETAFILE "EMF"
- #define MACPICT "PICT"
- #define POSTSCRIPT "PS"
-
- // Seek type
- //
- typedef enum { PDSEEK_SET, PDSEEK_CUR, PDSEEK_END } SeekType;
-
- class CIPrivateData : public CIInterface
- {
- public:
- // General purpose private data interface functions
- //
- virtual PMErr OpenPrivateData(char *pName, char *dataType,
- unsigned long mustExist) = 0;
- virtual PMErr ClosePrivateData() = 0;
- virtual PMErr DeletePrivateData(char *pName, char *dataType) = 0;
- virtual PMErr DeletePrivateDataStorage(char *pName) = 0;
-
- // Functions for object level private data specifically.
- //
- virtual PMErr OpenPrivateData(PMOBJ_REC* pObjRec, char *dataType,
- unsigned long mustExist) = 0;
- virtual PMErr DeletePrivateData(PMOBJ_REC* pObjRec, char *dataType) = 0;
- virtual PMErr DeletePrivateDataStorage(PMOBJ_REC* pObjRec) = 0;
-
- // I/O functions
- virtual PMErr ReadPrivateData(void **pData, unsigned long size, unsigned long &aSize) = 0;
- virtual PMErr WritePrivateData(void *pData, unsigned long size) = 0;
- virtual PMErr SeekPrivateData(long offset, SeekType sType) = 0;
-
- virtual void FreeMemory(void *lpData) = 0;
- };
-
- #endif
-